package br.ufpe.cin.rgms.linhapesquisa.controle;

import java.util.HashMap;
import java.util.List;

import br.ufpe.cin.rgms.base.Controle;
import br.ufpe.cin.rgms.base.Persistence;
import br.ufpe.cin.rgms.linhapesquisa.modelo.LinhaPesquisa;
import br.ufpe.cin.rgms.linhapesquisa.persistencia.DaoLinhaPesquisa;
import br.ufpe.cin.rgms.publicacao.modelo.Publicacao;

public class ControleLinhaPesquisa extends Controle<LinhaPesquisa,DaoLinhaPesquisa> {

	public ControleLinhaPesquisa() {
		super(new DaoLinhaPesquisa());
	}

	
	//TODO
	public LinhaPesquisa  getLinhaPesquisa(String titulo) {
		Persistence.getInstance().beginTransaction();
		LinhaPesquisa retorno =  this.dao.getLinhaPesquisa(titulo);
		Persistence.getInstance().commit();
//		
		return retorno;
	}

	protected void validar(LinhaPesquisa objeto)  {
//		if (objeto.hasDadosIncompletos()) {
//			throw new RGMSException("Dados incompletos na insercao de membro.");	
//		}
	}


	public LinhaPesquisa getLinhaPesquisa(int idLinhaPesquisa) {
		Persistence.getInstance().beginTransaction();
		
		LinhaPesquisa retorno =  this.dao.getLinhaPesquisa(idLinhaPesquisa);
		
		Persistence.getInstance().commit();
		
		return retorno;
	}

	public List<LinhaPesquisa> getLinhaPesquisas(HashMap<String, String> formfields) {
		Persistence.getInstance().beginTransaction();
		
		List<LinhaPesquisa> retorno =  this.dao.getElementos(formfields);
		
		Persistence.getInstance().commit();
		
		return retorno;
	}
}
